package cn.xerllent.wxtp.config;

import java.util.List;

import org.springframework.boot.context.properties.ConfigurationProperties;

import cn.hutool.json.JSONUtil;
import lombok.Getter;
import lombok.Setter;

/**
 * @author sxh
 */
@Getter
@Setter
@ConfigurationProperties(prefix = "xerllent.wxtp")
public class WxCpTpProperties {

  /**
   * 企业微信服务商的corpId
   */
  private String corpId;
  
  /**
   * 服务商 providerSecret
   */
  private String providerSecret;

  /**
   * 服务商 TOKEN
   */
  private String providerToken;

  /**
   * 服务商 EncodingAESKey
   */
  private String providerAesKey;
  
  /**
   * 服务商下面的应用
   * */
  private List<SuiteConfig> suiteConfigs;

  @Getter
  @Setter
  public static class SuiteConfig {
    /**
     * 第三方应用应用名,用于应用回调url地址配置，作为键值，不能重复，英文及数字组成
     */
    private String suiteName;

    /**
     * 第三方应用应用id
     */
    private String suiteId;

    /**
     * 设置企业微信应用的Secret
     */
    private String suiteSecret;

    /**
     * 设置企业微信应用的token
     */
    private String suiteToken;

    /**
     * 设置企业微信应用的EncodingAESKey
     */
    private String suiteAesKey;

  }

  @Override
  public String toString() {
    return JSONUtil.toJsonStr(this);
  }
}
